// 是否是移动端设备
export function isMobileDev() {
  return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
    navigator.userAgent,
  )
}

// 是否是16进制颜色值
export function isHexColor(color) {
  const reg = /^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/
  return reg.test(color)
}

// 是否是合法的手机号码
export function isPhone(phone) {
  return /^(?:(?:\+|00)86)?1\d{10}$/.test(phone)
}

// 是否是合法的邮箱
export function isEmail(email) {
  const reg =
    /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
  return reg.test(email)
}

// 是否是合法的excel文件
export function isExcel(name) {
  return /\.(xlsx|xls|csv)$/.test(name)
}

// 时间字符串是否是'YYYY-MM-DD'格式
export function isYMDFormat(dateStr) {
  const regex = /^\d{4}-\d{2}-\d{2}$/
  return regex.test(dateStr)
}

// 是否是ios safari浏览器
export function isIosSafari() {
  const userAgent = window.navigator.userAgent
  const isIOS = /iPad|iPhone|iPod/.test(userAgent) && !window.MSStream
  const isSafari = /^((?!chrome|android).)*safari/i.test(userAgent)

  return isIOS && isSafari
}
